#!/usr/bin/perl -w

package Processor;
sub new
{
    my $class = shift;
    my $self = {};
    $self->{_processAlgorithm}   = undef;
    $self->{_quantum} = undef;
    $self->{_threadAlgorithm} = undef;
    $self->{_threadQuantum} = undef;
    $self->{_kernels} = undef;
         
    bless $self, $class;
    return $self;
}
sub setProcessAlgorithm {
    my ( $self, $processAlgorithm ) = @_;
    $self->{_processAlgorithm} = $processAlgorithm if defined($processAlgorithm);
    return $self->{_processAlgorithm};
}
sub setQuantum {
    my ( $self, $quantum ) = @_;
    $self->{_quantum} = $quantum if defined($quantum);
    return $self->{_quantum};
}
sub setThreadAlgorithm {
    my ( $self, $threadAlgorithm ) = @_;
    $self->{_threadAlgorithm} = $threadAlgorithm if defined($threadAlgorithm);
    return $self->{_threadAlgorithm};
}
sub setThreadQuantum {
    my ( $self, $threadQuantum ) = @_;
    $self->{_threadQuantum} = $threadQuantum if defined($threadQuantum);
    return $self->{_threadQuantum};
}
sub setKernels {
    my ( $self, $kernels ) = @_;
    $self->{_kernels} = $kernels if defined($kernels);
    return $self->{_kernels};
}
sub getProcessAlgorithm {
	my( $self ) = @_;
    return $self->{_processAlgorithm};
}
sub getQuantum {
	my( $self ) = @_;
    return $self->{_quantum};
}
sub getThreadAlgorithm {
	my( $self ) = @_;
    return $self->{_threadAlgorithm};
}
sub getThreadQuantum {
	my( $self ) = @_;
    return $self->{_threadQuantum};
}
sub getKernels {
	my( $self ) = @_;
    return $self->{_kernels};
}
1;